package com.ctshk.rpc.system.service;

import com.ctshk.common.dto.Result;
import com.ctshk.common.model.PageResponse;
import com.ctshk.common.model.TokenUser;
import com.ctshk.rpc.system.dto.OperationLogDTO;
import com.ctshk.rpc.system.dto.StockScenicAreaDTO;
import com.ctshk.rpc.system.dto.StockScenicAreaPhotoDTO;
import com.ctshk.rpc.system.dto.StockScenicQueryAreaPhotoDTO;
import com.ctshk.rpc.system.req.StockScenicAreaListReq;
import com.ctshk.rpc.system.req.StockScenicAreaPhotoListReq;
import com.ctshk.rpc.system.req.StockScenicAreaPhotoBatchAddReq;
import com.ctshk.rpc.system.req.StockScenicAreaPhotoDeleteReq;

import java.util.List;

/**
 * <p>
 *
 * </p>
 *
 * @author xuhui
 * @since 1/29/2021
 */
public interface IStockScenicAreaService {

    PageResponse<StockScenicAreaDTO> areaList(StockScenicAreaListReq stockScenicAreaListReq, TokenUser currentUser);


    Result delete(StockScenicAreaPhotoDeleteReq stockScenicAreaPhotoDeleteReq, TokenUser currentUser);

    List<OperationLogDTO> opeartionRecords(TokenUser currentUser);

    /**
     * 新增图片库
     *
     * @param req 新增图片库入参
     * @param id 当前登录人id
     * @return
     */
    Result<List<StockScenicAreaPhotoDTO>> addPhoto(StockScenicAreaPhotoBatchAddReq req, Long id);

    /**
     * 根据图片id查询图片
     *
     * @param id
     * @return
     */
    StockScenicAreaPhotoDTO queryPhoto(Long id);

    /**
     * 根据地区id或名称查询图片
     *
     * @param stockScenicAreaPhotoListReq 入参
     * @return 返回值
     */
    PageResponse<StockScenicAreaPhotoDTO> areaPhoto(StockScenicAreaPhotoListReq stockScenicAreaPhotoListReq);

    /**
     * 根据地区id或名称查询图片
     *
     * @param stockScenicAreaPhotoListReq 入参
     * @return 返回值
     */
    PageResponse<StockScenicQueryAreaPhotoDTO> queryAreaPhoto(StockScenicAreaPhotoListReq stockScenicAreaPhotoListReq);

}
